package com.cdxy.service;

import com.cdxy.enums.SaveTypeEnum;
import com.cdxy.model.dto.base.resp.BasePageResp;
import com.cdxy.model.dto.req.SaveHotelReq;
import com.cdxy.model.dto.req.SaveListReq;
import com.cdxy.model.dto.req.SavePostReq;
import com.cdxy.model.dto.req.SaveSceneReq;
import com.cdxy.model.dto.resp.SaveListResp;
import com.cdxy.model.info.SaveInfo;

import java.util.List;

/**
 * <p>
 * 用户收藏表 服务类
 * </p>
 *
 * @author autoGenCode
 * @since 2020-03-05
 */
public interface IUserSaveService {

    /**
     * 收藏帖子
     *
     * @param savePostReq
     */
    void savePost(SavePostReq savePostReq);

    /**
     * 收藏酒店
     *
     * @param saveHotelReq
     */
    void saveHotel(SaveHotelReq saveHotelReq);

    /**
     * 收藏景点
     *
     * @param saveSceneReq
     */
    void saveScene(SaveSceneReq saveSceneReq);

    /**
     * 收藏列表
     *
     * @param saveListReq
     * @return
     */
    BasePageResp<SaveListResp> saveList(SaveListReq saveListReq);

    /**
     * 收藏状态
     *
     * @param axUid
     * @param businessId
     * @param typeEnum
     * @return
     */
    SaveInfo saveStatus(Integer axUid, Integer businessId, SaveTypeEnum typeEnum);

    /**
     * 收藏列表
     *
     * @param businessId
     * @param axUid
     * @param typeEnum
     * @return
     */
    List<SaveInfo> saveStatusList(List<Integer> businessId, Integer axUid, SaveTypeEnum typeEnum);
}
